約 3,764,844 件
https://w.atwiki.jp/m_shige1979/pages/620.html
レプリケーション 前提条件 初期設定によりマスタの設定を行っていること C \ mysql -u root --port=3309 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version 5.1.48-community-log MySQL Community Server (GPL) Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type help; or \h for help. Type \c to clear the current input statement. mysql use testdb1; Database changed mysql select * from testtbl1; +------+-------+-------+ | key1 | data1 | data2 | +------+-------+-------+ | 1 | aaaa | bbbb | | 2 | cccc | dddd | | 3 | eeee | ffff | +------+-------+-------+ 3 rows in set (0.00 sec) mysql マスタ用サーバにレプリケーション用ユーザー作成 mysql GRANT REPLICATION SLAVE ON *.* TO repuser@ 192.168.10.123 IDENTIFIED BY password ; Query OK, 0 rows affected (0.00 sec) mysql マスタをロックして、Positionを確認する mysql FLUSH TABLES WITH READ LOCK; Query OK, 0 rows affected (0.00 sec) mysql SHOW MASTER STATUS; +----------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +----------------+----------+--------------+------------------+ | log_bin.000001 | 1222 | | | +----------------+----------+--------------+------------------+ 1 row in set (0.00 sec) mysql データベースバックアップ c \ mysqldump -u root --port=3309 --all-databases --lock-all-tables dbdump.db c \ スレーブの「my.ini」の設定 [client] #password= your_password port= 3310 ##socket= /tmp/mysql.sock default-character-set=cp932 # Here follows entries for some specific programs # The MySQL server [mysqld] #allow-suspicious-udfs #ansi ##ログファイル用設定 general-log general_log_file log=test.log log-error=error.log ##log-long-format log-short-format log-output log-queries-not-using-indexes log-slave-updates log-slow-admin-statements log-slow-slave-statements long-query-time=10 log-tc log-tc-size log-warnings slow-query-log slow_query_log_file=slow-query.log ##バイナリログファイル用設定 log-bin=log_bin.log log-bin-index=log_bin_index.log log-bin-trust-function-creators binlog-row-event-max-size=1024 basedir="C \Program Files\MySQL\MySQL5.1/" datadir="C \ProgramData\MySQL\data2/" character-set-server=cp932 default-storage-engine=INNODB #sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" max_connections=100 port= 3310 #socket= /tmp/mysql.sock skip-external-locking key_buffer_size = 384M max_allowed_packet = 1M table_open_cache = 512 sort_buffer_size = 2M read_buffer_size = 2M read_rnd_buffer_size = 8M myisam_sort_buffer_size = 64M thread_cache_size = 8 query_cache_size = 32M # Try number of CPU s*2 for thread_concurrency thread_concurrency = 8 マスタのデータを使用して、データを設定する C \ mysql -u root --port=3310 dbdump.db c \ mysql -u root --port=3310 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version 5.1.48-community-log MySQL Community Server (GPL) Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type help; or \h for help. Type \c to clear the current input statement. mysql use testdb1; Database changed mysql select * from testtbl1; +------+-------+-------+ | key1 | data1 | data2 | +------+-------+-------+ | 1 | aaaa | bbbb | | 2 | cccc | dddd | | 3 | eeee | ffff | +------+-------+-------+ 3 rows in set (0.00 sec) mysql レプリケーション開始 mysql CHANGE MASTER TO - MASTER_HOST = 192.168.10.123 , - MASTER_PORT = 3309, - MASTER_USER = repuser , - MASTER_PASSWORD = password , - MASTER_LOG_FILE = log_bin.000001 , - MASTER_LOG_POS = 1222; Query OK, 0 rows affected (0.35 sec) mysql start slave; Query OK, 0 rows affected (0.00 sec) mysql データ更新確認(スレーブ確認) c \ mysql -u root --port=3310 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 12 Server version 5.1.48-community-log MySQL Community Server (GPL) Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type help; or \h for help. Type \c to clear the current input statement. mysql use testdb1; Database changed mysql select * from testtbl1; +------+-------+-------+ | key1 | data1 | data2 | +------+-------+-------+ | 1 | aaaa | bbbb | | 2 | cccc | dddd | | 3 | eeee | ffff | +------+-------+-------+ 9 rows in set (0.00 sec) mysql データ更新確認(マスタ更新) C \Users\m_shige1979 mysql -u root --port=3309 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5 Server version 5.1.48-community-log MySQL Community Server (GPL) Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type help; or \h for help. Type \c to clear the current input statement. mysql use testdb1; Database changed mysql insert into testtbl1(key1, data1, data2) values( 4, aaa , bbb ); Query OK, 1 row affected (0.06 sec) mysql insert into testtbl1(key1, data1, data2) values( 5, ccc , ddd ); Query OK, 1 row affected (0.06 sec) mysql insert into testtbl1(key1, data1, data2) values( 6, fff , ggg ); Query OK, 1 row affected (0.03 sec) mysql insert into testtbl1(key1, data1, data2) values( 7, aaa , bbb ); Query OK, 1 row affected (0.06 sec) mysql insert into testtbl1(key1, data1, data2) values( 8, aaa , bbb ); Query OK, 1 row affected (0.06 sec) mysql insert into testtbl1(key1, data1, data2) values( 9, aaa , bbb ); Query OK, 1 row affected (0.06 sec) mysql データ更新確認(スレーブ確認) c \ mysql -u root --port=3310 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 12 Server version 5.1.48-community-log MySQL Community Server (GPL) Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type help; or \h for help. Type \c to clear the current input statement. mysql use testdb1; Database changed mysql select * from testtbl1; +------+-------+-------+ | key1 | data1 | data2 | +------+-------+-------+ | 1 | aaaa | bbbb | | 2 | cccc | dddd | | 3 | eeee | ffff | | 4 | aaa | bbb | | 5 | ccc | ddd | | 6 | fff | ggg | | 7 | aaa | bbb | | 8 | aaa | bbb | | 9 | aaa | bbb | +------+-------+-------+ 9 rows in set (0.00 sec) mysql
https://w.atwiki.jp/okzmemorandum/pages/23.html
パーティショニング
https://w.atwiki.jp/lllit/pages/20.html
https://w.atwiki.jp/m_shige1979/pages/439.html
Smarty WindowsXP WindowsVista/7 Linux
https://w.atwiki.jp/m_shige1979/pages/559.html
コマンド一覧 パラメータ 一覧 パラメータ 内容 -u ユーザーID ユーザーIDを指定 -p パスワードをプロンプトで入力 --password= パスワード パスワードを指定 --execute= SQLを指定 --database= データベース データベース名を指定 --host= ホスト名 ホスト名、IPアドレス指定 --port= ポート番号 ポート番号指定 詳細は「mysql --help」と押下 MySQLクライアント サーバへ接続 パスワードをコマンドで入力 C \ mysql -u root -p Enter password ******** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 Server version 5.1.47-community MySQL Community Server (GPL) Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type help; or \h for help. Type \c to clear the current input statement. mysql \q Bye C \ Enter password ********でパスワードを設定する パスワードをコマンドで入力 C \ mysql -u root --password=password Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5 Server version 5.1.47-community MySQL Community Server (GPL) Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type help; or \h for help. Type \c to clear the current input statement. mysql \q Bye C \ mysql -u root --password=password サーバを切断 \q、quit、exit、[CTRL+C]のどれかをキーを入力 mysql \q Bye C \ 接続情報を表示 \sでキー入力 mysql \s -------------- mysql Ver 14.14 Distrib 5.1.47, for Win32 (ia32) Connection id 6 Current database Current user root@localhost SSL Not in use Using delimiter ; Server version 5.1.47-community MySQL Community Server (GPL) Protocol version 10 Connection localhost via TCP/IP Server characterset latin1 Db characterset latin1 Client characterset latin1 Conn. characterset latin1 TCP port 3306 Uptime 5 hours 51 min 57 sec Threads 1 Questions 10 Slow queries 0 Opens 15 Flush tables 1 Open tab les 0 Queries per second avg 0.0 -------------- mysql データベースを選択 USE データベース名 の選択 mysql use testdb1; Database changed mysql MySQLはデータベースを選択する必要があるのでこの処理が必要 SQLを実行 mysql insert into testtable1(data1, data2, data3) - values( 000001 , aaaaa , aaaaa-1 ); Query OK, 1 row affected (0.11 sec) mysql insert into testtable1(data1, data2, data3) - values( 000002 , aaaaa , aaaaa-2 ); Query OK, 1 row affected (0.04 sec) mysql select * from testtable1; +--------+-------+---------+ | data1 | data2 | data3 | +--------+-------+---------+ | 000001 | aaaaa | aaaaa-1 | | 000002 | aaaaa | aaaaa-2 | +--------+-------+---------+ 2 rows in set (0.09 sec) mysql MySQLコマンド SQLコマンドを直接実行 c \ mysql -u root --password=password --database=testdb1 --execute="select * from testtable1;" +--------+-------+---------+ | data1 | data2 | data3 | +--------+-------+---------+ | 000001 | aaaaa | aaaaa-1 | | 000002 | aaaaa | aaaaa-2 | +--------+-------+---------+ c \ SQLファイルを実行 c \ mysql -u root -t --password=password --database=testdb1 testtable1.SQL +--------+-------+---------+ | data1 | data2 | data3 | +--------+-------+---------+ | 000001 | aaaaa | aaaaa-1 | | 000002 | aaaaa | aaaaa-2 | +--------+-------+---------+ c \ testtable1.SQLの内容 select * from testtable1;
https://w.atwiki.jp/araiguma/pages/52.html
?は使えないところがある。 $stmt- prepare("insert into ?(id int) value (1)"); $stmt- execute($array(table_name)); のようにテーブル名などに?は使えない。
https://w.atwiki.jp/bithouse/pages/34.html
配列のキーに アンダーバー「_」 ハイフン[-] を使用するとバグる
https://w.atwiki.jp/chapati4it/pages/90.html
MySqlを使ってみるselect,insert @pagesでは、rubyとMySqlを使えると聞いて手を出してみたので、MySqlの使い方を調べてみました。 サンプルダウンロード MySqlに接続 select文の実行 select文の実行結果取得 insert文の実行 リクエストパラメータの取得 リダイレクト サンプルソース(mysql.cgi) サンプルソース(mysql.insert.cgi) サンプルダウンロード mysql.cgi mysql.insert.cgi MySqlに接続 @pagesでMySqlに接続するには、ユーザー名、パスワード、ホスト名、データベース名を管理画面から取得し、 以下のようにMysql newに設定します。 # DB接続 require mysql user = ユーザー名 pass = パスワード host = localhost name = データベース名 db = Mysql new(host, user, pass, name ) select文の実行 パラメータのないselect文なら、queryメソッドでselect文を実行し、Mysql Resultオブジェクトを取得できます。 # クエリ実行 res = db.query("select * from TestTable") select文の実行結果取得 select文の実行結果は、eachメソッドでカラムの配列として取得できます。 # データ取得&出力 res.each do |row| col1 = row[0] col2 = row[1] col3 = row[2] col4 = row[3] end insert文の実行 insert文はパラメータが基本必要なので、Mysql#prepareメソッドを使い、Mysql Stmtオブジェクトを取得します。 Mysql Stmt#executeメソッドにパラメータを渡すと、クエリの ? にパラメータが設定されます。 select文のパラメータを設定する場合も、同じ方法でよいと思います。 # クエリ実行 st = db.prepare("insert into TestTable (name, birth, address, email) values (?,?,?,?)") st.execute(name, birth, address, email) st.close() db.close() リクエストパラメータの取得 フォームから送信されたリクエストパラメータの取得はCGI#paramsメソッドを使いHashを取得します。 # リクエストパラメータ取得 require cgi cgi = CGI.new name = cgi["name"] birth = cgi["birth"] address = cgi["address"] email = cgi["email"] リダイレクト insert後はまた初期画面に戻りたいので、Ggi#headerメソッドを使い標準出力に結果を出力します。 # mysql.cgiへリダイレクト print cgi.header({ status = 302 Found , Location = mysql.cgi }) サンプルソース(mysql.cgi) 「TestTable」のデータを全て読み込んで画面に表示し、新しいデータの入力フォームを表示します。 入力フォームはmysql.insert.cgiに送信します。 #!/usr/local/bin/ruby # コンテンツタイプ出力 print "Content-type text/html\n\n" # ヘッダ出力 print( "head") html head title ruby and MySql - ちゃぱてぃ商店@pages /title meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" /head head # DB接続 require mysql user = chapati pass = ぱすわーど host = localhost name = db0chapati db = Mysql new(host, user, pass, name ) # クエリ実行 res = db.query("select * from TestTable") # データ取得&出力 res.each do |row| col1 = row[0] col2 = row[1] col3 = row[2] col4 = row[3] puts col1 puts ", " puts col2 puts ", " puts col3 puts ", " puts col4 puts " br " end db.close() # フォーム出力 print( "form") form action= mysql.insert.cgi label 名前: /label input type= text id= name name= name / br label 生年月日: /label input type= text id= birth name= birth / br label 住所: /label input type= text id= address name= address / br label メールアドレス: /label input type= text id= email name= email / br input type= submit /form form print " /html " サンプルソース(mysql.insert.cgi) mysql.cgiからリクエストパラメータを受け取り、「TestTable」に新しいレコードを作成するサンプルです。 新しいレコードの作成後は「mysql.cgi」にリダイレクトします。 #!/usr/local/bin/ruby # リクエストパラメータ取得 require cgi cgi = CGI.new name = cgi["name"] birth = cgi["birth"] address = cgi["address"] email = cgi["email"] # DB接続 require mysql user = ユーザー名 pass = ぱすわーど host = localhost dbname = db0chapati db = Mysql new(host, user, pass, dbname ) # クエリ実行 st = db.prepare("insert into TestTable (name, birth, address, email) values (?,?,?,?)") st.execute(name, birth, address, email) st.close() db.close() # mysql.cgiへリダイレクト print cgi.header({ status = 302 Found , Location = mysql.cgi })
https://w.atwiki.jp/m_shige1979/pages/615.html
MySQL 前提 .Net用のコネクタをインストールして、参照設定に登録する サンプル Imports MySql.Data.MySqlClient Module Module1 Sub Main() Dim conn As MySqlConnection Dim comm As MySqlCommand Dim reader As MySqlDataReader Dim str As String Dim sql As String str = String.Format("server={0};user id={1}; password={2}; database={3}; port={4}; pooling=false", _ "192.168.10.14", "root", "mysql", "testdb", "3306") conn = New MySqlConnection(str) conn.Open() sql = "select * from testtable1" comm = New MySqlCommand comm.Connection = conn comm.CommandText = sql reader = comm.ExecuteReader() While (reader.Read()) Dim strfld(reader.FieldCount - 1) As String For i As Integer = 0 To reader.FieldCount - 1 Step 1 strfld(i) = reader(i) Next i Console.WriteLine(Join(strfld, vbTab)) End While conn.Close() Console.Read() End Sub End Module 実行結果 サンプルリスト クエリー制御 表設定
https://w.atwiki.jp/chacha/pages/62.html
sql文以外は一行ずついれたほうがいいかも エラーとかがあったらサブリーダーまで cd c \mysql\bin mysql -u root select host,user,password from mysql.user; ←やってもやらんでも、どっちでも可 set password for root@localhost=PASSWORD( root ); set password for root@build=PASSWORD( root ); exit; mysql -u root -p次回からrootで入るにはここと次の行の2つを入力する必要がある root create database noblog; use noblog; CREATE TABLE user ( userID VARCHAR(20) primary key, passwd VARCHAR(16) not null, mail VARCHAR(100)not null, himitu int(1), answer varchar(30), ninsyouKey VARCHAR(8), kariDay date ); create table profile ( userID varchar(20), name varchar(40), year varchar(4), month varchar(2), day varchar(2), job varchar(2), sex int(1), hobby varchar(200), hitokoto varchar(200), pic varchar(2), nameSecret int(1), barthSecret int(1), primary key(userID) ); create table job ( jobNo integer(2) auto_increment, jobName varchar(20), primary key (jobNo) ); create table categori ( categoriNo int(5) primary key, categoriName varchar(40) ); create table theme ( userID varchar(20), themeNo int(2), themeName varchar(40) ); create table kiji ( userID varchar(20), kijiNo int(5), themeNo int(2), kijiTitle varchar(100), text text, commentFlg int(1), trackflg int(1), writeDay date, writeTime time ); create table comment ( userid varchar(20), kijiNo int(5), commentNo int(3), commWriter varchar(100), commDate datetime ); create table blog ( userID varchar(20) primary key, bTitle varchar(100) not null, bSetumei varchar(200), cssNo int(3), categoriNo int(5), categoriRunk int(6), allRank int(7), commentFlg int(1), trackFlg int(1) ); create table trackback ( kijiNo int(5), trackNo int(3), trackTitle varchar(100), bTitle varchar(100), bUul varchar(100), trackText varchar(200), trackDate datetime ); create table ranking ( userID varchar(20) primary key, one int(5), two int(5), three int(5), four int(5), five int(5), six int(5), seven int(5), weekTotal int(7), allTotal int(8) ); create table design ( desNo int(2) primary key auto_increment, css text ); create table picture ( userID varchar(20) primary key, picNo int(2), pic longblob, thumbnail varchar(50) ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 1001 , ダイエット ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 1002, 健康法 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 1003, 美容・コスメ ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 1004, 出産・育児 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 1005, 仕事 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 1006, 恋愛 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 1007, 就職活動 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 1008, その他 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 2001, 社会 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 2002, 政治 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 2003, 芸能 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 2004, その他 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 3001, 野球 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 3002, サッカー ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 3003, その他 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 4001, パチンコ・スロット ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 4002, 競馬 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 4003, その他 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5001, 本・雑誌 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5002, 音楽 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5003, 料理 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5004, グルメ ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5005, 旅行 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5006, 小説・詩 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5007, 車・バイク ) ; INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5008, ショッピング ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5009, ゲーム ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5010, ペット ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5011, コレクション ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5012, ファッション ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5013, おもちゃ ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 5014, その他 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 6001, 俳優・タレント・アイドル ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 6002, 漫画・アニメ ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 6003, お笑い ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 6004, バラエティ ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 6005, 映画 ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 6006, ドラマ ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 6007, テレビ ); INSERT INTO categori ( categoriNo , categoriName ) VALUES ( 6008, その他 );